CSSãµããã¯ã»ã«ã¬ã³ããªã³ã°ã§ããã¹ãŠã®ããã€ã¹ã§é®®æã§ã¯ãªã¢ãªããã¹ããšé®®æãªããžã¥ã¢ã«ãå®çŸããŸããé«DPIãã£ã¹ãã¬ã€æé©åã®ã°ããŒãã«ã¬ã€ãã
CSSãµããã¯ã»ã«ã¬ã³ããªã³ã°ïŒäžçäžã®é«DPIãã£ã¹ãã¬ã€åãæé©å
仿¥ã®èŠèŠäž»å°åã®ããžã¿ã«ç°å¢ã§ã¯ããŠã§ãã³ã³ãã³ããã倿§ãªããã€ã¹äžã§ã·ã£ãŒãã§ãå€èªå¯èœã§ãçŸçã«ãé åçã§ããããšãä¿èšŒããããšãäžå¯æ¬ ã§ããHigh Dots Per Inch (High-DPI)ãã£ã¹ãã¬ã€ãå€ãã®å ŽåãRetinaããã£ã¹ãã¬ã€ãŸãã¯åã«é«è§£å床ã¹ã¯ãªãŒã³ãšåŒã°ãããã®ãäžççã«æ®åããã«ã€ããŠããŠã§ãéçºè ããã¶ã€ããŒã¯ãçã«èŒãã³ã³ãã³ããæäŸãããšãã課é¡ã«çŽé¢ããŠããŸãããã®èŠèŠçãªå¿ 宿§ã«åœ±é¿ãäžãããéèŠã§ãããªããããã°ãã°èª€è§£ãããŠãããã¯ãããžãŒã®1ã€ããCSSãµããã¯ã»ã«ã¬ã³ããªã³ã°ã§ãã
ãã®å æ¬çãªã¬ã€ãã§ã¯ãCSSãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®è€éããæãäžãããã®å 容ãä»çµã¿ãå©ç¹ãæœåšçãªæ¬ ç¹ãããã³ããã€ã¹ãå Žæã«é¢ä¿ãªããäžçäžã®èŠèŽè ã®ããã«æé©ãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãäœæããããã«ãããã广çã«æŽ»çšããæ¹æ³ã«ã€ããŠæ¢æ±ããŸãã
ãã¯ã»ã«ãšãµããã¯ã»ã«ã®çè§£
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ãçè§£ããåã«ãããžã¿ã«ãã£ã¹ãã¬ã€ã®åºæ¬çãªæ§æèŠçŽ ã§ãããã¯ã»ã«ãçè§£ããããšãäžå¯æ¬ ã§ããããã¯ã»ã«ãã¯ããã¯ãã£ãšã¬ã¡ã³ããã®ç¥ã§ãç»é¢äžã®ç»åãŸãã¯ãã£ã¹ãã¬ã€ã®æå°å¶åŸ¡å¯èœåäœã§ããææ°ã®ãã£ã¹ãã¬ã€ã¯ãã°ãªããç¶ã«é 眮ãããäœçŸäžãã®ãããã®ãã¯ã»ã«ã§æ§æãããŠããŸãã
ãã ããã«ã©ãŒãã£ã¹ãã¬ã€ã®åãã¯ã»ã«å ã«ã¯ãéåžžã3ã€ã®ãµããã¯ã»ã«ããããŸãïŒèµ€ãç·ãéïŒRGBïŒããããã®ãµããã¯ã»ã«ã¯ããããã®è²ã®å ãæŸåºããåãµããã¯ã»ã«ã®åŒ·åºŠãå€ããããšã§ã人éã®ç®ã¯ãã¯ã»ã«å šäœã«å¯ŸããŠåäžã®è€åè²ãèªèããŸãããããã®ãµããã¯ã»ã«ã®é 眮ãšçžäºäœçšãããã«ã¹ãã¯ãã«ã®è²ã衚瀺ããããšãå¯èœã«ããŸãã
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®æŠå¿µã¯ããããããã«äžæ©é²ããŸããåãã¯ã»ã«ãã¢ããªã·ãã¯ãªãŠããããšããŠæ±ã代ããã«ããµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ãåã ã®ãµããã¯ã»ã«ãæäœããŠãããé«ãèªèè§£å床ãšãç¹ã«ããã¹ãã«å¯ŸããŠããã¹ã ãŒãºãªã¢ã³ããšã€ãªã¢ã·ã³ã°ãå®çŸããŸããããã¯ãç»é¢äžã®RGBãµããã¯ã»ã«ã®ç©ççãªã¬ã€ã¢ãŠããæŽ»çšããããšã«ãããããã¹ããããé®®æã§èªã¿ãããããããšãç®çãšããæè¡ã§ããåããŸãã¯é¡äŒŒã®è²ã§ãã飿¥ãããµããã¯ã»ã«ã«è²æ å ±ãã€ã³ããªãžã§ã³ãã«ãããªãŒãããããããšã§ããã¯ã»ã«å šäœãå¶åŸ¡ããã ãã§ã¯äžå¯èœã§ãã£ãããã詳现ã§ã¹ã ãŒãºãªãšããžã®é¯èŠãäœãåºãããšãã§ããŸãã
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®ä»çµã¿ïŒæè¡çãªè©³çްïŒ
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®éæ³ã¯ã人éã®ç®ããµããã¯ã»ã«ã¬ãã«ã§è²ãç°ãªãããã«èªèãããšããäºå®ã«ãããŸããããã¹ããã¬ã³ããªã³ã°ããããšããç¹ã«çœå°ã®é»ãããã¹ããŸãã¯ãã®éã®å Žåãã¬ã³ããªã³ã°ãšã³ãžã³ã¯ãã©ã®ãµããã¯ã»ã«ããããã«ã¢ã¯ãã£ããŸãã¯éã¢ã¯ãã£ãã«ããããã€ã³ããªãžã§ã³ãã«æ±ºå®ããŠãããé®®æãªãšããžãäœæã§ããŸãã
çœå°ã«çްãåçŽã®é»ãç·ãæ³åããŠãã ãããæšæºãã£ã¹ãã¬ã€ã§ã¯ããã®ç·ã¯åäžã®ãã¯ã»ã«å¹ ãå ããå¯èœæ§ããããŸãããµããã¯ã»ã«ã¬ã³ããªã³ã°ãã£ã¹ãã¬ã€ã§ã¯ããšã³ãžã³ã¯ãç·ã®ãã¯ã»ã«ã®èµ€è²ãµããã¯ã»ã«ãéã¢ã¯ãã£ãã«ããç·è²ãšéè²ã®ãµããã¯ã»ã«ãã¢ã¯ãã£ãã«ä¿ã€ããšã«ãã£ãŠãé»ãç·ãã¬ã³ããªã³ã°ããå¯èœæ§ããããŸãïŒããæãè²åããšããŠè¡šç€ºãããŸãïŒãç·ã®ããå³åŽã®ãã¯ã»ã«ã«ã€ããŠã¯ãèµ€è²ãµããã¯ã»ã«ããããã«ã¢ã¯ãã£ãã«ããŠãã®ã¶ã®ã¶ã®ãªããšããžã§ã¯ãªããã¹ã ãŒãºã§åŸ®åŠãªãã©ã³ãžã·ã§ã³ãäœæããå¯èœæ§ããããŸãããã®ãã¯ããã¯ã¯ãæ£ããè¡ããããšã广çãªè§£å床ãåäžãããã®ããã«ãããã¹ããèããé®®æã§è©³çްã«èŠããããšãã§ããŸãã
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®æåãšå€èгã¯ãããã€ãã®èŠå ã«å€§ãã圱é¿ãããŸãã
- ãµããã¯ã»ã«é çœ®ïŒæãäžè¬çãªé çœ®ã¯æ°Žå¹³RGBïŒèµ€ãç·ãéïŒã§ãããã ããBGRãåçŽRGBãããã«ã¯ããè€éãªãã¿ãŒã³ãªã©ãä»ã®é 眮ãååšããŸããã¬ã³ããªã³ã°ãšã³ãžã³ã¯ãæ£ããã¬ã³ããªã³ã°ããããã«ããã£ã¹ãã¬ã€ã®ãµããã¯ã»ã«ã¬ã€ã¢ãŠããç¥ãå¿ èŠããããŸãããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšãã©ãŠã¶ã¯éåžžããã®æ å ±ãæã£ãŠããŸãã
- ãã©ã³ãã¬ã³ããªã³ã°ãšã³ãžã³ïŒããŸããŸãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ïŒWindowsãmacOSãLinuxïŒãšãã©ãŠã¶ã¯ãç°ãªããã©ã³ãã¬ã³ããªã³ã°ãšã³ãžã³ïŒWindowsã®DirectWriteãmacOSã®Core Textãªã©ïŒã䜿çšããŸãããããã®ãšã³ãžã³ã¯ãã¢ã³ããšã€ãªã¢ã·ã³ã°ãšãµããã¯ã»ã«ã¬ã³ããªã³ã°ãåŠçããããã®ç¬èªã®ã¢ã«ãŽãªãºã ãæã£ãŠããŸãã
- ãã©ãŠã¶ã®å®è£ ïŒãã©ãŠã¶èªäœããCSSããããã£ãšãã©ã³ãã¬ã³ããªã³ã°ãç»é¢ã«ã©ã®ããã«è§£éãããé©çšããããã«åœ¹å²ãæãããŸãã
- ãŠãŒã¶ãŒã®å¥œã¿ïŒãŠãŒã¶ãŒã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®ç°å¢èšå®å ã§ããµããã¯ã»ã«ã¬ã³ããªã³ã°ãŸãã¯é¢é£ããã¹ã ãŒãžã³ã°èšå®ãåãæ¿ããããšãã§ããŸãã
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ãäž»ã«ããã¹ããšã·ã£ãŒããªãšããžãæã€ãã¯ã¿ãŒã°ã©ãã£ãã¯ã¹ã«å¹æãããããšã«æ³šæããããšãéèŠã§ããåçç»åãã°ã©ããŒã·ã§ã³ã®å Žåãé¢é£æ§ã¯äœãã誀ã£ãŠé©çšãããšãäžèŠãªè²ã®ããªã³ãžãçºçããå ŽåããããŸãã
äžçäžã®èŠèŽè ã«å¯Ÿãããµããã¯ã»ã«ã¬ã³ããªã³ã°ã®å©ç¹
äžçäžã®èŠèŽè ã«ãšã£ãŠãé«DPIãã£ã¹ãã¬ã€ã®æ¡çšãšãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®æå¹ãªäœ¿çšã¯ã倧ããªå©ç¹ããããããŸãã
- å¯èªæ§ã®åäžïŒããã¯æãéèŠãªå©ç¹ã§ããããé®®æãªããã¹ãã¯ãç¹ã«ããã€ã¹ã§é·æéèªæžãããŠãŒã¶ãŒã®ç®ã®ç²ãã軜æžããŸããããã¯ãäœæ¥ãå匷ããŸãã¯ã¬ãžã£ãŒã®ããã«ã³ã³ãã³ãã«ã¢ã¯ã»ã¹ããå¯èœæ§ã®ãããæç¢ºãªã³ãã¥ãã±ãŒã·ã§ã³ãäžå¯æ¬ ãªç¶æ³ã§ãåœéçãªãŠãŒã¶ãŒã«ãšã£ãŠäžå¯æ¬ ã§ãã
- èŠèŠçãªé åã®åäžïŒé®®æãªã¿ã€ãã°ã©ãã£ãšæç¢ºã«å®çŸ©ãããã°ã©ãã£ãã¯ã¯ããããããã§ãã·ã§ãã«ã§æŽç·Žãããå šäœçãªçŸããã«è²¢ç®ããŸããããã«ããããã©ã³ããŸãã¯ãŠã§ããµã€ãã®å質ã«å¯ŸãããŠãŒã¶ãŒã®èªèãåäžããŸãã
- ã¢ã¯ã»ã·ããªãã£ïŒARIAããŒã«ã®ãããªçŽæ¥çãªã¢ã¯ã»ã·ããªãã£æ©èœã§ã¯ãããŸãããããµããã¯ã»ã«ã¬ã³ããªã³ã°ã«ããå¯èªæ§ã®åäžã¯ã軜床ã®èŠèŠé害ã®ãããŠãŒã¶ãŒããæšæºã¬ã³ããªã³ã°ã«ç²åŽãæãããŠãŒã¶ãŒã«éæ¥çã«åœ¹ç«ã€å¯èœæ§ããããŸãã
- ããã€ã¹éã®æŽåæ§ïŒäžçäžã®ãŠãŒã¶ãŒãããã©ãã°ã·ããã¹ããŒããã©ã³ãã©ããããããããããäºç®ã«åªãããªãã·ã§ã³ãŸã§ãããŸããŸãªããã€ã¹ãå©çšããŠãããããäžè²«ããèŠèŠçå質ã確ä¿ããããšã¯èª²é¡ãšãªã£ãŠããŸãããµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ãããããµããŒãããããã€ã¹ã§é«ãã¬ãã«ã®é®®æããç¶æããã®ã«åœ¹ç«ã¡ãŸãã
- ç»åããŒã¹ã®ããã¹ãã®å¿ èŠæ§ã®åæžïŒæŽå²çã«ããã¶ã€ããŒã¯ãç¹å®ã®ã¿ã€ãã°ã©ãã£å¹æãå®çŸããããäœè§£å床ç»é¢ã§ã®é®®æãã確ä¿ãããããããã«ãããã¹ããç»åãšããŠã¬ã³ããªã³ã°ããããšã«é Œã£ãŠããŸãããé«è§£å床ãã£ã¹ãã¬ã€ãšãµããã¯ã»ã«ã¬ã³ããªã³ã°ã䜿çšãããšããã€ãã£ãã®HTML / CSSããã¹ããåç以äžã«ãããã§ãã·ã§ãã«ã§ããã©ãŒãã³ã¹ã«åªããŠèŠããããã«ãªããSEOãšå¿çæ§ã®ç¹ã§æå©ã«ãªããŸãã
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®CSSããããã£ãšãã¯ããã¯
ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšãã©ãŠã¶ã¯ãã³ã¢ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®å€ããåŠçããŸãããCSSã¯ããã¹ãã®è¡šç€ºã«åœ±é¿ãäžããå Žåã«ãã£ãŠã¯å¶åŸ¡ã§ããããããã£ãæäŸããŸããCSSãOSèšå®ãšåæ§ã«ãµããã¯ã»ã«ã¬ã³ããªã³ã°ãçŽæ¥æå¹ã«ããããã§ã¯ãªãããšãçè§£ããããšãéèŠã§ãã代ããã«ãCSSããããã£ã¯ããã¹ããã¬ã³ããªã³ã°ãããæ¹æ³ã«åœ±é¿ãäžãããããã·ã¹ãã ã®åºç€ãšãªããµããã¯ã»ã«ã¬ã³ããªã³ã°æ©èœãšçžäºäœçšããŸãã
1. `text-rendering`ããããã£
text-rendering
CSSããããã£ã¯ãããã©ãŒãã³ã¹ãšå¯èªæ§ã®ç¹ã§ããã¹ããã©ã®ããã«ã¬ã³ããªã³ã°ããããã«åœ±é¿ãäžããæãçŽæ¥çãªæ¹æ³ã§ãã3ã€ã®å¯èœãªå€ããããŸãã
auto
ïŒãã©ãŠã¶ã¯ããã©ã«ãã®ã¬ã³ããªã³ã°ã¢ãŒãã䜿çšããŸããããã«ã¯ãéåžžããµããŒããããŠããŠããã©ã³ããšã³ã³ããã¹ãã«é©ããŠããå Žåã¯ããµããã¯ã»ã«ã¬ã³ããªã³ã°ãå«ãŸããŸããoptimize-speed
ïŒãã©ãŠã¶ã¯ãå¯èªæ§ãããã¬ã³ããªã³ã°é床ãåªå ããŸããããã«ãããã¢ã³ããšã€ãªã¢ã·ã³ã°ãšã«ãŒãã³ã°ãç¡å¹ã«ãªããããŸãã¯å質ãäœäžããããã¹ããé®®æã«èŠããªããªãå¯èœæ§ããããŸãããã¬ã³ããªã³ã°ãé«éã«ãªããŸããããã¯ãäžè¬çã«æ¬æããã¹ãã«ã¯æšå¥šãããŸãããoptimize-legibility
ïŒãã©ãŠã¶ã¯ãå¯èªæ§ãšå€èгãåªå ããŸãããã®èšå®ã¯ãå€ãã®å Žåãããç©æ¥µçãªã¢ã³ããšã€ãªã¢ã·ã³ã°ãšã«ãŒãã³ã°ãæå¹ã«ãããµããã¯ã»ã«ã¬ã³ããªã³ã°ãšé£æºããŠãå¯èœãªéãé®®æãªããã¹ããçæããŸããããã¯ããµããã¯ã»ã«ã¬ã³ããªã³ã°ã®å©ç¹ãé«ããå¯èœæ§ãæãé«ãå€ã§ãã
äŸïŒ
body {
text-rendering: optimize-legibility;
}
text-rendering: optimize-legibility;
ãbody
ã®ãããªåºç¯ãªèŠçŽ ã«èšå®ããããšã«ãããããã¹ãã®èŠèŠçå質ãåªå
ãããããšããã©ãŠã¶ã«éç¥ããŸããããã«ããããµããã¯ã»ã«ã¬ã³ããªã³ã°ãšå©çšå¯èœãªå Žåã¯ãã现ããã¢ã³ããšã€ãªã¢ã·ã³ã°æè¡ã®äœ¿çšã奚å±ãããŸãã
2. `font-smooth`ããããã£ïŒå®éšçããã³ãã³ããŒãã¬ãã£ãã¯ã¹ä»ãïŒ
font-smooth
ããããã£ã¯ãéçºè
ããã©ã³ãã®ã¹ã ãŒãžã³ã°ãå¶åŸ¡ã§ããããã«ããå®éšçãªCSSããããã£ã§ããæ®éçã«ãµããŒããŸãã¯æšæºåãããŠããããã§ã¯ãããŸãããããã³ããŒãã¬ãã£ãã¯ã¹ãšãšãã«ãããã©ãããã©ãŒã ã§ã®ã¬ã³ããªã³ã°ã«åœ±é¿ãäžããããã«äœ¿çšã§ããŸãã
auto
ïŒããã©ã«ãã®ãã©ã³ãã¹ã ãŒãžã³ã°ãnever
ïŒãã©ã³ãã¹ã ãŒãžã³ã°ãç¡å¹ã«ããŸããããã«ãããéåžžã«ã·ã£ãŒããªãšã€ãªã¢ã·ã³ã°ãããããã¹ãã«ãªãå¯èœæ§ããããŸããããã¯ãäžéšã®ããããªã±ãŒã¹ã§ã¯æãŸããå ŽåããããŸãããäžè¬çã«å¯èªæ§ãäœäžããŸããalways
ïŒãã©ã³ãã¹ã ãŒãžã³ã°ã匷å¶ããŸããnormal
ïŒauto
ãšåæ§ã
äŸïŒãã³ããŒãã¬ãã£ãã¯ã¹ä»ãïŒïŒ
body {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
font-smooth: always;
}
font-smooth
ãš-webkit-font-smoothing
ã«é¢ããéèŠãªèæ
®äºé
ïŒ
-webkit-font-smoothing: antialiased;
ã¯ãäž»ã«WebKitããŒã¹ã®ãã©ãŠã¶ïŒmacOSã®SafariãChromeãªã©ïŒçšã§ãããã·ã¹ãã ã®ããã©ã«ãã®ã¹ã ãŒãžã³ã°ïŒå€ãã®å Žåã°ã¬ãŒã¹ã±ãŒã«ã¹ã ãŒãžã³ã°ïŒãç¡å¹ã«ããŠãããç©æ¥µçãªãµããã¯ã»ã«ã¬ã³ããªã³ã°ãå¯èœã«ããããšãç®çãšããŠããŸããããã«ãããmacOSã§ã¯ããé®®æãªããã¹ãã衚瀺ãããŸãããäžéšã®Windowsã»ããã¢ããã§ã¯ãè²ã匷ãããããè²ã®ããªã³ãžãçºçããå¯èœæ§ããããŸãã-moz-osx-font-smoothing: grayscale;
ã¯ãmacOSã®Firefoxçšã§ãéåžžã¯ã°ã¬ãŒã¹ã±ãŒã«ã¢ã³ããšã€ãªã¢ã·ã³ã°ã匷å¶ããŸãã- Windowsã§ã¯ããã©ã³ãã¬ã³ããªã³ã°ã¯éåžžãDirectWriteã«ãã£ãŠåŠçãããŸããããã¯ããæŽç·ŽãããŠããããããã®CSSããããã£ã«ããçŽæ¥çãªå¶åŸ¡ã¯ããŸããããŸããããµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ãéåžžãã·ã¹ãã èšå®ã§èš±å¯ãããŠããå Žåã¯ããã©ã«ãã§æå¹ã«ãªããŸãã
å®éšçãªæ§è³ªãšãã©ãããã©ãŒã åºæã®åäœã«ããããããã®ããããã£ã䜿çšããå Žåã¯æ³šæããããŸããŸãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšãã©ãŠã¶ã§ååã«ãã¹ãããããšãæé©ã§ããå€ãã®ã°ããŒãã«ãŠãŒã¶ãŒã«ãšã£ãŠãããã©ã«ãã®OSãšãã©ãŠã¶ã®èšå®ãæé©ãªãµããã¯ã»ã«ã¬ã³ããªã³ã°ãšã¯ã¹ããªãšã³ã¹ãæäŸããŸãã
3. ãã©ã³ãã®éžæãšãã³ãã£ã³ã°
ãã©ã³ãã®éžæãšãã®åºç€ãšãªããã³ãã£ã³ã°ããéèŠãªåœ¹å²ãæãããŸããç»é¢äœ¿çšã®ããã«èšèšããããã©ã³ãã¯ãå€ãã®å ŽåããŠã§ããã©ã³ãããšåŒã°ããããŸããŸãªãµã€ãºãšè§£å床ã§ã®é®®æããæé©åããŠããŸãã
ãŠã§ããã©ã³ãã®æé©åïŒå€ãã®ææ°ã®ãŠã§ããã©ã³ãã¯ããµããã¯ã»ã«ã¬ã³ããªã³ã°ã念é ã«çœ®ããŠèšèšãããŠããŸãããã©ã³ããã¶ã€ããŒã¯ãããŸããŸãªãµã€ãºã§ãã©ã³ããã©ã®ããã«ã¬ã³ããªã³ã°ãããããã¬ã€ãããŠé®®æãã確ä¿ãããç¹å®ã®æç€ºïŒãã³ãã£ã³ã°ïŒãåã蟌ã¿ãŸããã°ããŒãã«ãŠã§ããµã€ãã®ãã©ã³ããéžæãããšãã¯ãç»é¢ã§ããŸãã¬ã³ããªã³ã°ãããããšãç¥ãããŠãããããŸããŸãªå€ªããšã¹ã¿ã€ã«ã§å©çšã§ãããã®ãåªå ããŠãã ããã
äŸïŒ'Open Sans'ã'Roboto'ã'Lato'ãªã©ã®äººæ°ã®Googleãã©ã³ãã¯ãããŸããŸãªãã£ã¹ãã¬ã€ã§ã®å¯èªæ§ãšããã©ãŒãã³ã¹ã«åªããŠããããããŠã§ããããžã§ã¯ãã«æé©ã§ãã
4. ãã¯ãã«ã°ã©ãã£ãã¯ã¹ãšSVG
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ããã¹ãã®ã³ã³ããã¹ãã§æãå€ãè°è«ãããŠããŸãããã·ã£ãŒããªã¬ã³ããªã³ã°ã®ååã¯ãã¯ãã«ã°ã©ãã£ãã¯ã¹ã«ãé©çšãããŸããScalable Vector GraphicsïŒSVGïŒã¯ãæ¬è³ªçã«è§£å床ã«äŸåããŸããããããã¯ãã¯ã»ã«ã§ã¯ãªãæ°åŒã§å®çŸ©ãããŠãããããå質ãæãªãããšãªãä»»æã®ãµã€ãºã«æ¡å€§ã§ããŸãã
SVGã衚瀺ããå Žåãç¹ã«åçŽãªåœ¢ç¶ãã¢ã€ã³ã³ã®å Žåããã©ãŠã¶ã®ã¬ã³ããªã³ã°ãšã³ãžã³ã¯ããªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšé£æºããŠãå¯èœãªéãé®®æã«ã¬ã³ããªã³ã°ããããšãç®æãããµããã¯ã»ã«ã¬ã³ããªã³ã°æè¡ã䜿çšããŠãšããžãå®çŸ©ããŸããããã«ãããSVGã¯ãé«DPIãã£ã¹ãã¬ã€ã®ããŽãã¢ã€ã³ã³ãåçŽãªã€ã©ã¹ãã«æé©ãªåœ¢åŒã«ãªããŸãã
äŸïŒäŒç€Ÿã®ããŽã«SVGã䜿çšãããšãæšæºçãªã©ãããããç»é¢ã§è¡šç€ºãããŠããŠãããã«ãªã³ã®èšèšå°éå®¶ã䜿çšããé«è§£å床4Kã¢ãã¿ãŒã§è¡šç€ºãããŠããŠããæ±äº¬ã®ããŒã±ãã£ã³ã°æ åœè ã䜿çšããŠããŠããã·ã£ãŒãããç¶æã§ããŸãã
äžçäžã®èŠèŽè åãã®èª²é¡ãšèæ ®äºé
ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ãèŠèŠçãªã¡ãªãããå€§å¹ ã«æäŸããŸãããäžçäžã®èŠèŽè ãã¿ãŒã²ããã«ããå Žåã«éèŠãªèª²é¡ãšèæ ®äºé ãããã€ããããŸãã
- ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšãã©ãŠã¶ã®æçåïŒäžçäžã®ãŠãŒã¶ãŒã¯ãããŸããŸãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ïŒWindowsããŒãžã§ã³ãmacOSãããŸããŸãªLinuxãã£ã¹ããªãã¥ãŒã·ã§ã³ãAndroidãiOSïŒãšãã©ãŠã¶ãå®è¡ããŸããåçµã¿åããã«ã¯ããã©ã³ãã®ã¹ã ãŒãžã³ã°ãšãµããã¯ã»ã«ã¬ã³ããªã³ã°ã®ç°ãªãããã©ã«ãèšå®ãããå ŽåããããŸãã
- ãŠãŒã¶ãŒã®å¥œã¿ïŒãŠãŒã¶ãŒã¯ãèªåã®å¥œã¿ã«åãããŠè¡šç€ºèšå®ãã«ã¹ã¿ãã€ãºããããšããããããŸããè²ã®ããªã³ãžãçºçããå Žåããç°ãªãçŸçæèŠã奜ãå Žåã¯ãäžéšã®ãŠãŒã¶ãŒãã¢ã³ããšã€ãªã¢ã·ã³ã°ãŸãã¯ãµããã¯ã»ã«ã¬ã³ããªã³ã°ãç¡å¹ã«ããå ŽåããããŸããCSSã¯ããããã®æç€ºçãªãŠãŒã¶ãŒã®éžæãäžå¿ èŠã«äžæžãããªãã§ãã ããã
- è²ã®ããªã³ãžïŒãµããã¯ã»ã«ã¬ã³ããªã³ã°ãç¹ã«ç©æ¥µçãªå®è£ ãŸãã¯äžé©åãªæ§æã¯ãããã¹ããšããžã®åšãã«èµ€ãç·ããŸãã¯éã®åŸ®åŠãªãããŒã§ãããè²ã®ããªã³ãžãã«ã€ãªããå ŽåããããŸããããã¯ããµããã¯ã»ã«é çœ®ãæšæºçã§ãªãå ŽåããŸãã¯ã¬ã³ããªã³ã°ãšã³ãžã³ã誀ã£ãåæãè¡ãå Žåã«ãç¹ã«é¡èã§ãã
- ããã©ãŒãã³ã¹ãžã®åœ±é¿ïŒå¯èªæ§ãæé©åããªãããäžéšã®ã¬ã³ããªã³ã°æè¡ã¯ã軜埮ãªããã©ãŒãã³ã¹ãªãŒããŒããããçºçããå ŽåããããŸããããŒããŠã§ã¢ã®åŠçèœåãäœãå°åããã€ã³ã¿ãŒãããæ¥ç¶ãé ãå°åã®ãŠãŒã¶ãŒã«ãšã£ãŠã¯ãããã®ãã©ã³ã¹ãåãå¿ èŠããããŸãããã ããææ°ã®ãã©ãŠã¶ãšã³ãžã³ã¯é«åºŠã«æé©åãããŠããŸãã
- èšèªãšã¹ã¯ãªããã®éãïŒããŸããŸãªèšèªãšã¹ã¯ãªããã«ã¯ãããŸããŸãªæåã®åœ¢ç¶ãã¹ãããŒã¯ã®å€ªããè€éãããããŸããã©ãã³èªããŒã¹ã®ã¹ã¯ãªããã«é©ããŠãããã®ããCJKïŒäžåœèªãæ¥æ¬èªãéåœèªïŒãŸãã¯ã¢ã©ãã¢èªã¹ã¯ãªããã«ãæ³šææ·±ããã©ã³ããã¶ã€ã³ãšã¬ã³ããªã³ã°ãªãã§å®å šã«å€æããããšã¯éããŸããã
ã°ããŒãã«ãªé«DPIæé©åã®ãã¹ããã©ã¯ãã£ã¹
ãã¹ãŠã®äººã®ããã«ãã©ãã§ããŠã§ãã³ã³ãã³ããæå€§éã«è¡šç€ºããã«ã¯ã次ã®ãã¹ããã©ã¯ãã£ã¹ãæ€èšããŠãã ããã
text-rendering: optimize-legibility;
ãåªå ããïŒããã¯ãäžè¬çã«ãé®®æãªããã¹ãã¬ã³ããªã³ã°ãä¿ãæãå®å šã§å¹æçãªCSSããããã£ã§ããbody
ãã¡ã€ã³ã³ã³ãã³ãã³ã³ãããªã©ã®é«ã¬ãã«ã®èŠçŽ ã«é©çšããŸãã- ãŠã§ããã©ã³ããè³¢ã䜿çšããïŒç»é¢äœ¿çšã®ããã«ç¹å¥ã«èšèšãããé«å質ã®ãŠã§ããã©ã³ããéžæããŸããããŸããŸãªè§£å床ãšãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã§ãã¹ãããŸããGoogle FontsãAdobe Fontsããã®ä»ã®è©å€ã®è¯ããã©ã³ããã¡ãŠã³ããªã¯ãåªãããªãã·ã§ã³ãæäŸããŠããŸãã
- ã¢ã€ã³ã³ãšããŽã«SVGãæ¡çšããïŒåçã®è©³çްãå¿ èŠãšããªããã¹ãŠã®ã°ã©ãã£ãã¯èŠçŽ ã«ã¯ãSVGã䜿çšããŸããããã«ããããã¹ãŠã®ããã€ã¹ã§ã¹ã±ãŒã©ããªãã£ãšã·ã£ãŒããªã¬ã³ããªã³ã°ãä¿èšŒãããŸãã
- ããŸããŸãªãã©ãããã©ãŒã ã§åŸ¹åºçã«ãã¹ãããïŒæãéèŠãªã¹ãããã§ããããŸããŸãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ïŒWindowsãmacOSãLinuxïŒãšãã©ãŠã¶ïŒChromeãFirefoxãSafariãEdgeïŒã§ãŠã§ããµã€ãããã¹ãããŸãããã©ãŠã¶éçºè ããŒã«ã䜿çšããŠãããŸããŸãªè§£å床ãšãã¯ã»ã«å¯åºŠãã·ãã¥ã¬ãŒãããŸãã
- äžå¿
èŠã«ã·ã¹ãã ã®ããã©ã«ããäžæžãããªãïŒ
-webkit-font-smoothing
ã¯macOSã®ããã¹ããæ¹åã§ããŸãããä»ã®ã·ã¹ãã ã§ã¯åé¡ãçºçããå¯èœæ§ããããŸããéåžžã«å ·äœçã§ãã¹ãæžã¿ã®ãã¶ã€ã³èŠä»¶ããªãéãããã©ãŠã¶ãšOSã®ããã©ã«ãã«ã§ããã ãäŸåããŠãã ããã - ç»åã¢ã»ãããæé©åããïŒã©ã¹ã¿ãŒç»åïŒJPEGãPNGãGIFïŒã«ã€ããŠã¯ãããŸããŸãªè§£å床ã«é©ãããµã€ãºã®ç»åãæäŸããŠããããšã確èªããŠãã ããã
<picture>
èŠçŽ ã<img>
ã¿ã°ã®srcset
屿§ãªã©ã®æè¡ã䜿çšãããšãé«DPIãã£ã¹ãã¬ã€çšã®é«è§£å床ç»åãæäŸã§ããŸãã - ãã©ã³ããã©ãŒã«ããã¯ãèæ
®ããïŒCSS
font-family
宣èšã«ã¯ãåžžã«ãã©ãŒã«ããã¯ãã©ã³ããå«ããŠãåªå ãã©ã³ããèªã¿èŸŒãŸãããã¬ã³ããªã³ã°ã«å€±æããå Žåã«ãèªã¿ããã代æ¿ãã©ã³ãã衚瀺ãããããã«ããŸãã - ã³ã³ãã³ãã®æçãã«çŠç¹ãåœãŠãïŒæçµçãªç®æšã¯ãæç¢ºã§ã¢ã¯ã»ã¹å¯èœãªã³ã³ãã³ãã§ããäžçäžã§èªã¿ããããã©ã³ããµã€ãºãšè¡éãéžæããŸããæ¬æããã¹ãã®äžè¬çãªã¬ã€ãã©ã€ã³ã¯ãçŽ16pxãŸãã¯åçã®
rem
/em
åäœã§ãã - ãŠãŒã¶ãŒãã£ãŒãããã¯ã¯éåžžã«è²Žéã§ãïŒå¯èœã§ããã°ãããŸããŸãªå°åã®ãŠãŒã¶ãŒããèŠèŠçãªãšã¯ã¹ããªãšã³ã¹ã«é¢ãããã£ãŒãããã¯ãåéããŸããããã«ãããäºæããªãã¬ã³ããªã³ã°ã®åé¡ãèšå®ã匷調衚瀺ã§ããŸãã
ã°ããŒãã«ãªäŸãšãŠãŒã¹ã±ãŒã¹
ãããã®ååããã°ããŒãã«ããžãã¹ã®çŸå®çãªã·ããªãªã«ã©ã®ããã«å€æãããããèŠãŠã¿ãŸãããã
- ãšãŒãããïŒãã€ããªã©ïŒã«æ ç¹ã眮ãEã³ããŒã¹ãã©ãããã©ãŒã ïŒæ¥æ¬ããªãŒã¹ãã©ãªã¢ããã©ãžã«ã§é¡§å®¢ã«ãµãŒãã¹ãæäŸããå Žåãé®®æãªè£œåã®èª¬æãšæç¢ºãªäŸ¡æ Œèšå®ãäžå¯æ¬ ã§ãã
text-rendering: optimize-legibility;
ã䜿çšãããšããããã®å°åã§å€ãã®æ¶è²»è ã䜿çšããŠããé«è§£å床ã¹ããŒããã©ã³ã§ã補ååã仿§ãã³ãŒã«ãã¥ã¢ã¯ã·ã§ã³ãã¿ã³ãç°¡åã«èªã¿åããããã«ãªããŸããé貚ãé éæ¹æ³ã®SVGã¢ã€ã³ã³ãé®®æããç¶æããŸãã - ã°ããŒãã«ãŠãŒã¶ãŒããŒã¹ãæã€SaaSäŒæ¥ïŒç±³åœãã€ã³ããè±åœãªã©ïŒïŒãœãããŠã§ã¢ã¢ãºã¢ãµãŒãã¹ãããã€ããŒã®å ŽåããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ïŒUIïŒãæãéèŠã§ããããã·ã¥ããŒããè€éãªããŒã¿ããŒãã«ãããã³ããã²ãŒã·ã§ã³èŠçŽ ã¯ãæç¢ºã§ãææ§ãã®ãªããã®ã§ãªããã°ãªããŸããããµããã¯ã»ã«ã®ãã©ã³ãã¬ã³ããªã³ã°ãæé©åãããšãäžçäžã®ãŠãŒã¶ãŒãããµã³ãã©ã³ã·ã¹ã³ã®Macã䜿çšããŠããããã ã³ãã€ã®Windowsã©ãããããã䜿çšããŠãããã«é¢ä¿ãªããèŠèŠçãªç²åŽãªãã«ããã£ãŒããç°¡åã«è§£éãããšã©ãŒã¡ãã»ãŒãžãèªã¿ãã¢ããªã±ãŒã·ã§ã³ãããã²ãŒãã§ããããã«ãªããŸãã
- åœéçãªèŠèŽè
ãæã€ã³ã³ãã³ããããªãã·ã£ãŒïŒã«ãããã·ã³ã¬ããŒã«ãåã¢ããªã«ãªã©ïŒïŒãã¥ãŒã¹ãµã€ããããã°ãæè²ãã©ãããã©ãŒã ã®å Žåãå¯èªæ§ãéèŠã§ãã
optimize-legibility
ãšå³éžããããŠã§ããã©ã³ããæŽ»çšããããšã§ãã©ã®åœã®é«è§£å床ããã€ã¹ã§ããèšäºãå¿«é©ã«èªããããã«ããããšãã§ããŸããããã«ãããããã¹ãã®ã¬ã³ããªã³ã°ãäžååãªããã«ãŠãŒã¶ãŒãé¢è±ãããªã¹ã¯ãæå°éã«æãããã倿§ãªåœéçãªèªè å±€ã®ãšã³ã²ãŒãžã¡ã³ããšãµã€ãæ»åšæéãåäžããŸãã
çµè«ïŒã€ãªããã®ããäžçã®ããã®æçãã®è¿œæ±
CSSãµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ã埮åŠãªãã©ãŠã¶ãšãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã®æ©èœã§ãããç¹ã«ãŸããŸãå¢ãç¶ããŠããé«DPIãã£ã¹ãã¬ã€ã§ããŠã§ãã³ã³ãã³ãã®èªèãããå質ã«éèŠãªåœ¹å²ãæãããŠããŸãããã®ä»çµã¿ãçè§£ããCSSãšãã©ã³ãã®éžæã§ãã¹ããã©ã¯ãã£ã¹ãé©çšããããšã«ãããã°ããŒãã«ãªèŠèŽè åãã«ããŠã§ããµã€ãã®å¯èªæ§ãèŠèŠçãªé åãããã³å šäœçãªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãå€§å¹ ã«åäžãããããšãã§ããŸãã
ç®æšã¯ãç¹å®ã®ã¬ã³ããªã³ã°ã¢ãŒãã匷å¶ããããšã§ã¯ãªããææ°ã®ãã£ã¹ãã¬ã€ã®æ©èœãšäžçäžã®ãŠãŒã¶ãŒã®å¥œã¿ã®äž¡æ¹ãå°éããŠãã³ã³ãã³ããå¯èœãªéãé«ãæçããšå¯èªæ§ã§è¡šç€ºãããããã«ããããšã§ãããããã®ååã«çŠç¹ãåœãŠãããšã§ãããŸããŸãªããã¯ã°ã©ãŠã³ããšäžçäžã®ãã¹ãŠã®é ããæ¥ããŠãŒã¶ãŒã«é¿ãèŠèŠçã«åªãããšã¯ã¹ããªãšã³ã¹ãæäŸããããã®ååãªæºåãã§ããŸãã
äž»ãªãã€ã³ãïŒ
- ãµããã¯ã»ã«ã¬ã³ããªã³ã°ã¯ãåã ã®RGBãµããã¯ã»ã«ã掻çšããŠããã¹ãã®é®®æããåäžãããŸãã
text-rendering: optimize-legibility;
ã¯ãé®®æãªã¬ã³ããªã³ã°ãä¿ãäž»èŠãªCSSããŒã«ã§ãã- æå€§ã®ã¹ã±ãŒã©ããªãã£ãšã·ã£ãŒããã¹ãå®çŸããã«ã¯ãã¢ã€ã³ã³ãšããŽã«SVGã䜿çšããŸãã
- ç»é¢äœ¿çšã«æé©åããããŠã§ããã©ã³ããéžæããŸãã
- ããŸããŸãªãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãšãã©ãŠã¶ã§ãŠã§ããµã€ãããã¹ãããŸãã
- äœãããããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãšã³ã³ãã³ãã®æçããåªå ããŸãã